package EnderecoEstoque;
// Generated 05/07/2011 23:25:32 by Hibernate Tools 3.2.1.GA

import empresa.Empresa;
import java.util.List;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQuery;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import setor.Setor;

/**
 * EnderecoEstoque generated by hbm2java
 *  @author Alberto Medeiros
 */
@Entity
@Table(name = "endereco_estoque", schema = "public")
@NamedQuery(name="enderecoEstoque.listar", query="from EnderecoEstoque")
public class EnderecoEstoque implements java.io.Serializable {

    private int idEndereco;
    private Empresa objEmpresa;
    private String ruaEstoque;
    private String descricaoEndereco;
    private List<Setor> listSetor;
    private Boolean statusEnderecoEstoque;
    public EnderecoEstoque() {
    }

    public EnderecoEstoque(int idEndereco) {
        this.idEndereco = idEndereco;
    }

    public EnderecoEstoque(int idEndereco, Empresa objEmpresa, String ruaEstoque, String descricaoEndereco, Boolean statusEnderecoEstoque, List<Setor> listSetor) {
        this.idEndereco = idEndereco;
        this.objEmpresa = objEmpresa;
        this.ruaEstoque = ruaEstoque;
        this.descricaoEndereco = descricaoEndereco;
        this.listSetor = listSetor;
        this.statusEnderecoEstoque = statusEnderecoEstoque;
    }

    @Id
    @Column(name = "id_endereco", unique = true, nullable = false)
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    public int getIdEndereco() {
        return this.idEndereco;
    }

    public void setIdEndereco(int idEndereco) {
        this.idEndereco = idEndereco;
    }
    
    @ManyToOne(fetch=FetchType.EAGER)
    @JoinColumn(name="id_empresa")
    public Empresa getObjEmpresa() {
        return this.objEmpresa;
    }

    public void setObjEmpresa(Empresa objEmpresa) {
        this.objEmpresa = objEmpresa;
    }

    @Column(name = "rua_estoque", length = 100)
    public String getRuaEstoque() {
        return this.ruaEstoque;
    }

    public void setRuaEstoque(String ruaEstoque) {
        this.ruaEstoque = ruaEstoque;
    }

    @Column(name = "descricao_endereco", length = 100)
    public String getDescricaoEndereco() {
        return this.descricaoEndereco;
    }

    public void setDescricaoEndereco(String descricaoEndereco) {
        this.descricaoEndereco = descricaoEndereco;
    }

    @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "enderecoEstoque")
    public List<Setor> getlistSetor() {
        return this.listSetor;
    }

    public void setlistSetor(List<Setor> listSetor) {
        this.listSetor = listSetor;
    }
    
    @Column(name = "status_endereco_estoque")
    public Boolean getStatusEnderecoEstoque() {
        return statusEnderecoEstoque;
    }

    public void setStatusEnderecoEstoque(Boolean statusEnderecoEstoque) {
        this.statusEnderecoEstoque = statusEnderecoEstoque;
    }
    
}